package com.mango.module.ldap.service;

import java.util.List;

import com.mango.module.ldap.domain.PersonDO;

/**
 * LDAP人员 接口
 * @author Mango-Lab
 * @Date 2021年4月8日
 */
public interface IPersonService {

	/**
	 * 获取所有人员的名称
	 * @return
	 */
    List<String> getAllPersonNames();

    /**
     * 传统LDAP查询方式
     * @return
     */
    List<String> getAllPersonNamesWithTraditionalWay();

    /**
     * 查询对象映射集合
     * @return
     */
    List<PersonDO> getAllPersons();

    /**
     * 根据DN查询指定人员信息
     * @param dn
     * @return
     */
    PersonDO findPersonWithDn(String dn);

    /**
     * 根据角色ID查询用户
     * @param orgId
     * @return
     */
    List<String> getPersonNamesByRoleId(String roleId);
    
    /**
     * 根据uid查询用户
     * @param orgId
     * @return
     */
    PersonDO getPersonByUid(String uid);
    
    
    
    /**
     * 添加人员
     * @param person
     * @return
     */
    boolean addUser(PersonDO person);
    
    /**
     * 更改人员
     * @param person
     * @return
     */
    boolean updateUser(PersonDO person);
    
    /**
     * 刪除人员
     * @param person
     * @return
     */
    boolean delUser(String uid);

}
